package com.xiaoshuidi.cloud.module.finance.controller.admin.invoice.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.List;

/**
 * 运营配置 - 发票配置信息 Request VO
 */
@Schema(description = "运营配置 - 发票配置信息 Request VO")
@Data
public class FinanceInvoiceTitleConfigReqVO {

    /**
     * 门店id
     */
    private Long apartmentId;
    /**
     * 门店名称
     */
    private String apartmentName;
    /**
     * 财务章
     */
    private String financialSealUrl;
    /**
     * 可开数电普票：1-可以；0-不行
     */
    private boolean isOrdinaryTicket;
    /**
     * 可开数电专票：1-可以；0-不行
     */
    private boolean isSpecialTicket;
    /**
     * 开票公司
     */
    @NotNull(message = "开票公司不能为空！")
    private String companyName;
    /**
     * 企业税号
     */
    @NotNull(message = "企业税号不能为空！")
    private String companyTaxpayerId;
    /**
     * 开票是否审核：1-可以；0-不行
     */
    private boolean isApproval;

    @NotNull(message = "费项及税率不能为空")
    @Size(min = 1, message = "费项及税率不能为空")
    @Schema(description = "费项及税率")
    List<FinanceInvoiceTaxRateVO> taxes;

}